setFogColor(#000000)
generateEndCity()

setSingleBiome("minecraft:sky")

//Creates a new SkyIslandType. The argument is a biome id.
sky = new SkyIslandType("minecraft:sky")

endstone = new SkyIslandType("minecraft:sky")
endstone.setMainBlock(<minecraft:end_stone>)
endstone.disableBiomeBlockReplacement()
endstone.disableDecorations()
endstone.disableAnimals()

inferium = new SkyIslandType("minecraft:sky")
inferium.setMainBlock(<mysticalagriculture:storage>)
inferium.disableBiomeBlockReplacement()
inferium.disableDecorations()
inferium.disableAnimals()

ender = new SkyIslandType("minecraft:sky")
ender.setMainBlock(<thermalfoundation:ore_fluid:4>)
ender.disableBiomeBlockReplacement()
ender.disableDecorations()
ender.disableAnimals()

prosperity = new SkyIslandType("minecraft:sky")
prosperity.setMainBlock(<mysticalagriculture:storage:5>)
prosperity.disableBiomeBlockReplacement()
prosperity.disableDecorations()
prosperity.disableAnimals()

obsidian = new SkyIslandType("minecraft:sky")
obsidian.setMainBlock(<minecraft:obsidian>)
obsidian.disableBiomeBlockReplacement()
obsidian.disableDecorations()
obsidian.disableAnimals()

purpur = new SkyIslandType("minecraft:sky")
purpur.setMainBlock(<minecraft:purpur_block>)
purpur.disableBiomeBlockReplacement()
purpur.disableDecorations()
purpur.disableAnimals()

purpurpillar = new SkyIslandType("minecraft:sky")
purpurpillar.setMainBlock(<minecraft:purpur_pillar>)
purpurpillar.disableBiomeBlockReplacement()
purpurpillar.disableDecorations()
purpurpillar.disableAnimals()

endbricks = new SkyIslandType("minecraft:sky")
endbricks.setMainBlock(<minecraft:end_bricks>)
endbricks.disableBiomeBlockReplacement()
endbricks.disableDecorations()
endbricks.disableAnimals()

dragonegg = new SkyIslandType("minecraft:sky")
dragonegg.setMainBlock(<ogdragon:dragon_egg>)
dragonegg.disableBiomeBlockReplacement()
dragonegg.disableDecorations()
dragonegg.disableAnimals()

skyIslands = new SkyIslandGenerator()
skyIslands.setRegionSize(29)
addGenerator(skyIslands)

//Adds sky islands. Arguments are radius, number of times to attempt to generate in each region, and whether each island should choose a random type (true), or if types should be used in order (false).
large = skyIslands.addSkyIslands(100, 1, false)
//Adds a SkyIslandType to the island generator.
large.addType(endstone)
large.addType(inferium)
large.addType(ender)
large.addType(prosperity)
large.addType(obsidian)
large.addType(purpur)
large.addType(purpurpillar)
large.addType(endbricks)

medium = skyIslands.addSkyIslands(50, 32, false)
medium.addType(endstone)
medium.addType(inferium)
medium.addType(ender)
medium.addType(prosperity)
medium.addType(obsidian)
medium.addType(purpur)
medium.addType(purpurpillar)
medium.addType(endbricks)
medium.addType(dragonegg)

small = skyIslands.addSkyIslands(25, 64, false)
small.addType(endstone)
small.addType(inferium)
small.addType(ender)
small.addType(prosperity)
small.addType(obsidian)
small.addType(purpur)
small.addType(purpurpillar)
small.addType(endbricks)
small.addType(dragonegg)

tiny = skyIslands.addSkyIslands(10, 128, false)
tiny.addType(endstone)
tiny.addType(inferium)
tiny.addType(ender)
tiny.addType(prosperity)
tiny.addType(obsidian)
tiny.addType(purpur)
tiny.addType(purpurpillar)
tiny.addType(endbricks)
tiny.addType(dragonegg)

disableRespawning()
captureTeleports()